package org.eae.eldf.dao.sys.impl;

import java.util.ArrayList;
import java.util.List;

import org.springframework.stereotype.Repository;

import org.eae.eldf.dao.sys.ISysParameterDao;
import org.eae.eldf.dto.sys.SysParameterQueryDto;
import org.eae.eldf.entity.sys.SysParameter;
import org.eae.eldf.framework.dao.JdbcDaoImpl;
import org.eae.eldf.framework.pager.Pagination;
import org.eae.eldf.framework.persistence.Criteria;
import org.eae.eldf.framework.utils.StringUtil;

@Repository
public class SysParameterDaoImpl extends JdbcDaoImpl implements ISysParameterDao{

	@Override
	public Pagination<SysParameter> pageParamsList(
			Pagination<SysParameter> pagers,SysParameterQueryDto sysParameterQueryDto) {
		String sql="SELECT * FROM SYS_PARAMETER P ";
		List<Object> pars=new ArrayList<Object>();
		if(null != sysParameterQueryDto){
		if(!StringUtil.isNullOrBlank(sysParameterQueryDto.getParametervalue())){
			sql+="WHERE P.PARAMETERVALUE LIKE ?";
			pars.add("%"+sysParameterQueryDto.getParametervalue()+"%");
		}
		}
		return this.queryListByPage(pagers, sql,pars,SysParameter.class);
	}

	@Override
	public SysParameter findByParamsName(String parametername) {
		Criteria criteria=new Criteria(SysParameter.class);
		criteria.and("parametername", new String[]{parametername});
		return this.querySingleResult(criteria);
	}



}
